// 职业定义（详细版，支持原材料类型、产出类型和随机性控制）
const PROFESSIONS = {
    'MINER': { 
        name: '矿工', 
        color: '#8B4513', 
        workPlaces: ['铁矿山', '铜矿山'],
        inputTypes: ['矿石类'],
        outputTypes: ['金属矿石'],
        randomOutput: false,
        materials: ['铁矿石', '铜矿石']
    },
    'FARMER': { 
        name: '农民', 
        color: '#228B22', 
        workPlaces: ['农场'],
        inputTypes: ['种子类'],
        outputTypes: ['谷物类'],
        randomOutput: false,
        materials: ['小麦', '大麦', '水稻']
    },
    'BLACKSMITH': { 
        name: '铁匠', 
        color: '#A9A9A9', 
        workPlaces: ['铁匠铺'],
        inputTypes: ['金属矿石'],
        outputTypes: ['金属制品'],
        randomOutput: false,
        materials: ['铁矿石', '铜矿石'],
        products: ['铁剑', '铜剑', '铁斧', '铜斧']
    },
    'CHEF': { 
        name: '厨师', 
        color: '#FF6347', 
        workPlaces: ['餐厅'],
        inputTypes: ['食材类'],
        outputTypes: ['熟食类'],
        randomOutput: true,
        materials: ['猪肉', '牛肉', '羊肉', '鸡肉', '鸭肉', '鲜鱼'],
        products: ['炖肉', '烤肉', '肉干', '炖鱼', '鱼干']
    },
    'FISHERMAN': { 
        name: '渔民', 
        color: '#4682B4', 
        workPlaces: ['河滨', '海滨'],
        inputTypes: [],
        outputTypes: ['鲜鱼类'],
        randomOutput: true,
        materials: ['鲈鱼', '草鱼', '鲤鱼', '鲅鱼', '鲫鱼', '鳕鱼']
    },
    'HERDSMAN': { 
        name: '牧民', 
        color: '#CD853F', 
        workPlaces: ['牧场'],
        inputTypes: ['饲料类'],
        outputTypes: ['鲜肉类'],
        randomOutput: true,
        materials: ['猪肉', '牛肉', '羊肉', '驴肉']
    },
    'FRUIT_GROWER': { 
        name: '果农', 
        color: '#FF4500', 
        workPlaces: ['果林'],
        inputTypes: ['树苗类'],
        outputTypes: ['鲜果类'],
        randomOutput: true,
        materials: ['苹果', '梨', '桃', '葡萄', '橙子', '香蕉']
    },
    'LUMBERJACK': { 
        name: '伐木工', 
        color: '#8B4513', 
        workPlaces: ['森林'],
        inputTypes: [],
        outputTypes: ['木材类'],
        randomOutput: false,
        materials: ['橡木', '松木', '杉木', '桦木']
    },
    'HUNTER': { 
        name: '猎人', 
        color: '#8B4513', 
        workPlaces: ['森林', '山脉', '草原'],
        inputTypes: ['弹药类'],
        outputTypes: ['猎物类', '皮毛类'],
        randomOutput: true,
        materials: ['鹿肉', '野猪肉', '兔肉', '狼皮', '熊皮', '羽毛']
    },
    'WATER_CARRIER': { 
        name: '挑水工', 
        color: '#1E90FF', 
        workPlaces: ['河滨'],
        inputTypes: [],
        outputTypes: ['水资源'],
        randomOutput: false,
        materials: ['水']
    },
    // 战斗职业
    'WARRIOR': { 
        name: '战士', 
        color: '#B22222', 
        workPlaces: ['训练场'],
        inputTypes: [],
        outputTypes: [],
        randomOutput: false,
        materials: []
    },
    'MAGE': { 
        name: '法师', 
        color: '#483D8B', 
        workPlaces: ['法师塔'],
        inputTypes: [],
        outputTypes: [],
        randomOutput: false,
        materials: []
    },
    'ARCHER': { 
        name: '弓手', 
        color: '#2E8B57', 
        workPlaces: ['靶场'],
        inputTypes: [],
        outputTypes: [],
        randomOutput: false,
        materials: []
    },
    'PRIEST': { 
        name: '牧师', 
        color: '#FFD700', 
        workPlaces: ['教堂'],
        inputTypes: [],
        outputTypes: [],
        randomOutput: false,
        materials: []
    },
    'MAYOR': { 
        name: '镇长', 
        color: '#000080', 
        workPlaces: ['政府'],
        inputTypes: [],
        outputTypes: [],
        randomOutput: false,
        materials: []
    }
};

// 场景距离定义（单位：游戏内分钟）
const SCENE_DISTANCES = {
    '城镇广场': {
        '铁矿山': 180,  // 6单位 × 30分钟
        '铜矿山': 240,  // 8单位 × 30分钟
        '河滨': 90,     // 3单位 × 30分钟
        '海滨': 120,    // 4单位 × 30分钟
        '森林': 120,    // 4单位 × 30分钟
        '农场': 150,    // 5单位 × 30分钟
        '牧场': 120,    // 4单位 × 30分钟
        '果林': 90,     // 3单位 × 30分钟
        '魔域': 360     // 12单位 × 30分钟
    },
    '魔域': {
        '魔兽山': 30,   // 1单位 × 30分钟
        '鬼怪湖': 60,   // 2单位 × 30分钟
        '火焰山': 90,   // 3单位 × 30分钟
        '雪山': 60      // 2单位 × 30分钟
    }
};

// 子场景定义
const SUB_SCENES = {
    '城镇': ['魔药店', '草药店', '防具店', '武器店', '政府', '铁匠铺', '治安署', '磨坊', '餐厅'],
    '魔域': ['魔兽山', '鬼怪湖', '火焰山', '雪山']
};